Data storage devices generally operate to store and retrieve data in a fast and efficient manner. Some storage devices utilize a semiconductor array of solid-state memory cells to store individual bits of data. Such memory cells can be volatile or non-volatile. Volatile memory cells generally retain data stored in memory only so long as operational power continues to be supplied to the device, while non-volatile memory cells generally retain data storage in memory even in the absence of the application of operational power.
Some non-volatile memory cells utilize a ferromagnetic construction to store data, such as magnetic random access memory (MRAM) and spin-torque transfer random access memory (STRAM). Such memory cells often utilize a reference layer and a free layer separated by an oxide layer. The magnetization of the reference layer is maintained in a constant orientation, such as by being pinned to a separate magnetization layer (such as a permanent magnet). Different electrical resistances of the memory cell can be established by selectively orienting the magnetization of the free layer so as to be aligned with or opposite to the magnetization orientation of the reference layer. These different resistances can be utilized to indicate different memory states (e.g., logical 0 or 1) for the cell.
In these and other types of data storage devices, it is often desirable to increase efficiency and accuracy, particularly with regard to the complexity of the memory cell structure present in a storage array.